//part1:C02:ex2.38.cpp
#include <ios>
#include <iostream>
#include <typeinfo>

int main(void)
{
    using namespace std;
    int a = 3;
    auto c1 = a;
    decltype(a) c2 = a;
    decltype((a)) c3 = a;
    
    const int d = 5;
    auto f1 = d;
    decltype(d) f2 =d;

    cout << typeid(c1).name() << endl;
    cout << typeid(c2).name() << endl;
    cout << typeid(c3).name() << endl;
    cout << typeid(f1).name() << endl;
    cout << typeid(f2).name() << endl;
    
    c1++;
    c2++;
    f1++;
    //f2++;
    cout << a << endl;
    cout << c1 << endl;
    cout << c2 << endl;
    cout << c3 << endl;
    cout << f1 << endl;
    cout << f2 << endl;
    
    return 0;
}